#ifndef API_RESULT_H
#define API_RESULT_H

#include <string>

#include "common/more/uuid.h"

namespace Api
{

struct Result final
{
public:
    enum class Type
    {
        None,
        NotFound,
        NoAccess,
    };

public:
    bool m_isSuccess = true;
    std::string m_reason;
    Type m_type = Type::None;
    Uuids::Uuid m_sessionUuid = Uuids::nilUuid();
    unsigned m_id = { 0 };
};

struct AuthResult final
{
    Uuids::Uuid m_sessionUuid = Uuids::nilUuid();
    unsigned m_userId = 0;
};

} // namespace Api

#endif // API_RESULT_H
